package com.example.wechattakeaway.service;

import com.example.wechattakeaway.form.orderform.OrderCommitForm;
import com.example.wechattakeaway.vo.ResultVO;

import java.text.ParseException;

public interface OrderService {

    /*
    用户提交订单
    @param OrderCommitForm
    @return null
     */
    ResultVO UserCommit(OrderCommitForm orderCommitForm) throws ParseException;

    /*
    用户支付，改变订单状态
    @param orderId
    @return null
     */
    ResultVO UserPayment(Integer orderId);

    /*
    商家确认，改变订单状态
    @param orderId
    @return null
     */
    ResultVO MerchantConfirm(Integer orderId);

    /*
    用户确认商品送达，改变订单状态
    @param orderId
    @return null
     */
    ResultVO UserConfirm(Integer orderId);

    /*
    用户或者商家取消订单
    @param orderId
    @return null
     */
    ResultVO OrderQuit(Integer orderId);

    /*
    根据订单id查询订单内容
    @param orderId
    @return orderVo
     */
    ResultVO SelectOrderById(Integer orderId);

    /*
    根据用户id，按时间倒叙查询订单
    @param userId
    @return order
     */
    ResultVO SelectOrderByUser(Integer pageNum,Integer userId);

    /*
    根据商家id，倒叙查询时间订单
    @param merchantId
    @return order
     */
    ResultVO SelectOrderByMerchant(Integer pageNum,Integer merchantId);

    /*
    根据订单id删除订单
    @param orderId
    @return null
     */
    ResultVO DeleteOrderById(Integer orderId);

}
